#pragma once

#include <SnakeLib/Direction.h>
#include <SnakeLib/ISolver.h>

#include "API.h"

class MYSOLVER_API MySolver
  : public snake::ISolver
{
public:
  virtual snake::EDirection Solve(const snake::Problem &problem) override;
  virtual std::pair<int, int> GetHeadPosition(const snake::Problem &problem);
  virtual snake::EDirection GetCurrentDirection(const snake::Problem &problem);
  virtual bool CheckForCrash(const snake::Problem& problem);
};